package com.greenline.push.dal.pushcenter;

import java.util.List;

import com.greenline.push.dal.pushcenter.dataobject.ThrottleDO;
import com.greenline.push.dal.query.ThrottleQuery;

public interface ThrottleDao {
    /**
     * 新增
     * 
     * @param throttleDO
     * @return 新增数据的ID
     */
    Long insert(ThrottleDO throttleDO);

    /**
     * 根据ID获取
     * 
     * @param id
     * @return GroupAppDO
     */
    ThrottleDO getById(Long id);

    /**
     * 跟新
     * 
     * @param throttleDO
     * @return -1 表示更新失败；>0 表示更新成功
     */
    int update(ThrottleDO throttleDO);

    /**
     * 分页查询
     * 
     * @param query
     * @return
     */
    ThrottleQuery listByQuery(ThrottleQuery query);

    /**
     * 删除
     * 
     * @param id
     * @return -1 表示删除失败；>0 表示删除成功
     */
    int deleteById(Long id);

    List<ThrottleDO> listByExample(ThrottleDO throttleDO);
}
